package unit_test;

import cartes.Carte;
import cartes.CouleurCarte;
import cartes.Denomination;
import mains.Main;

/*
 * Classe qui contient plusieur type different de main.
 */
public class UsineMain {
	
	public static Main getBreland() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.DAME, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.PIQUE));
		return main;
	}

	public static Main getBrelandPLusGrand() {
		Main main = new Main();
		main.add(new Carte(Denomination.CINQ, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.CINQ, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.ROI, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.CINQ, CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getBrelandPLusPetit() {
		Main main = new Main();
		main.add(new Carte(Denomination.DEUX, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.DEUX, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.DEUX, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getBrelandPLusGrandKicker() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.ROI, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getBrelandPLusPetitKicker() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.DEUX, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getCarre() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.PIQUE));
		return main;
	}

	public static Main getCarrePLusGrandKicker() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.DIX, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getCarrePLusPetitKicker() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.HUIT, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getCarrePLusGrand() {
		Main main = new Main();
		main.add(new Carte(Denomination.ROI, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.DIX, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.ROI, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.ROI, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.ROI, CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getCarrePLusPetit() {
		Main main = new Main();
		main.add(new Carte(Denomination.DEUX, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.HUIT, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.DEUX, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.DEUX, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.DEUX, CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getCouleur() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.QUATRE, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.DAME, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.DEUX, CouleurCarte.CARREAU));
		return main;
	}

	public static Main getCouleurPLusGrand() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.QUATRE, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.AS, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.DEUX, CouleurCarte.CARREAU));
		return main;
	}
	
	public static Main getCouleurPLusPetit() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.QUATRE, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.VALET, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.DEUX, CouleurCarte.CARREAU));
		return main;
	}
	
	public static Main getDeuxPaires() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.DAME, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.DAME, CouleurCarte.PIQUE));
		return main;
	}

	public static Main getDeuxPairesPLusGrand() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.ROI, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.ROI, CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getDeuxPairesPLusPetit() {
		Main main = new Main();
		main.add(new Carte(Denomination.DEUX, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.DEUX, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.DAME, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.DAME, CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getDeuxPairesPLusGrandKicker() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.ROI, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.DAME, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.DAME, CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getDeuxPairesPLusPetitKicker() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.SIX, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.DAME, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.DAME, CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getMainPleine() {
		Main main = new Main();
		main.add(new Carte(Denomination.NEUF, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.PIQUE));
		return main;
	}

	public static Main getMainPleinePLusGrand() {
		Main main = new Main();
		main.add(new Carte(Denomination.DIX, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.DIX, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getMainPleinePLusPetit() {
		Main main = new Main();
		main.add(new Carte(Denomination.NEUF, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.DEUX, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.DEUX, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.DEUX, CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getPaire() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.ROI, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.DAME, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.PIQUE));
		return main;
	}

	public static Main getPairePLusGrand() {
		Main main = new Main();
		main.add(new Carte(Denomination.SIX, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.ROI, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.DAME, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.SIX, CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getPairePLusPetit() {
		Main main = new Main();
		main.add(new Carte(Denomination.DEUX, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.ROI, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.DAME, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.DEUX, CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getPairePLusGrandKicker() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.AS, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.DAME, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getPairePLusPetitKicker() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, CouleurCarte.COEUR));
		main.add(new Carte(Denomination.NEUF, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.DEUX, CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.DAME, CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getQuinteCouleur() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.CINQ, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.QUATRE, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.SEPT, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.SIX, cartes.CouleurCarte.PIQUE));
		return main;
	}
	public static Main getQuinteCouleurAs() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.CINQ, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.QUATRE, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.DEUX, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.AS, cartes.CouleurCarte.PIQUE));
		return main;
	}

	public static Main getQuinteCouleurPLusGrandCouleur() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.CINQ, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.QUATRE, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.SEPT, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.SIX, cartes.CouleurCarte.COEUR));
		return main;
	}
	
	public static Main getQuinteCouleurPLusPetitCouleur() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, cartes.CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.CINQ, cartes.CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.QUATRE, cartes.CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.SEPT, cartes.CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.SIX, cartes.CouleurCarte.CARREAU));
		return main;
	}
	
	public static Main getQuinteCouleurPLusGrand() {
		Main main = new Main();
		main.add(new Carte(Denomination.HUIT, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.CINQ, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.QUATRE, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.SEPT, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.SIX, cartes.CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getQuinteCouleurPLusPetit() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.CINQ, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.QUATRE, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.DEUX, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.SIX, cartes.CouleurCarte.PIQUE));
		return main;
	}
	
	public static Main getQuinteRoyale() {
		Main main = new Main();
		main.add(new Carte(Denomination.AS, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.DIX, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.ROI, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.VALET, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.DAME, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.HUIT, cartes.CouleurCarte.PIQUE));
		return main;
	}

	public static Main getQuinteRoyalePLusGrand() {
		Main main = new Main();
		main.add(new Carte(Denomination.AS, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.DIX, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.ROI, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.VALET, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.DAME, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.NEUF, cartes.CouleurCarte.CARREAU));
		return main;
	}
	
	public static Main getQuinteRoyalePLusPetit() {
		Main main = new Main();
		main.add(new Carte(Denomination.AS, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.DIX, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.ROI, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.VALET, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.DAME, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.SEPT, cartes.CouleurCarte.TREFLE));
		return main;
	}
	
	public static Main getQuinte() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.CINQ, cartes.CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.QUATRE, cartes.CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.SEPT, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.SIX, cartes.CouleurCarte.CARREAU));
		return main;
	}
	
	public static Main getQuinteDouble() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.CINQ, cartes.CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.QUATRE, cartes.CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.QUATRE, cartes.CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.SEPT, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.SIX, cartes.CouleurCarte.CARREAU));
		return main;
	}

	public static Main getQuintePLusGrand() {
		Main main = new Main();
		main.add(new Carte(Denomination.HUIT, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.CINQ, cartes.CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.QUATRE, cartes.CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.SEPT, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.SIX, cartes.CouleurCarte.CARREAU));
		return main;
	}
	
	public static Main getQuintePLusPetit() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.CINQ, cartes.CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.QUATRE, cartes.CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.DEUX, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.SIX, cartes.CouleurCarte.CARREAU));
		return main;
	}
	
	public static Main getQuintuplet() {
		Main main = new Main();
		main.add(new Carte(Denomination.TROIS, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.TROIS, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.TROIS, cartes.CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.TROIS, cartes.CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.TROIS, cartes.CouleurCarte.COEUR));
		return main;
	}

	public static Main getQuintupletPLusGrand() {
		Main main = new Main();
		main.add(new Carte(Denomination.QUATRE, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.QUATRE, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.QUATRE, cartes.CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.QUATRE, cartes.CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.QUATRE, cartes.CouleurCarte.COEUR));
		return main;
	}
	
	public static Main getQuintupletPLusPetit() {
		Main main = new Main();
		main.add(new Carte(Denomination.DEUX, cartes.CouleurCarte.COEUR));
		main.add(new Carte(Denomination.DEUX, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.DEUX, cartes.CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.DEUX, cartes.CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.DEUX, cartes.CouleurCarte.COEUR));
		return main;
	}
	
	public static Main getBidon() {
		Main main = new Main();
		main.add(getCarteForte());
		main.add(new Carte(Denomination.DEUX, cartes.CouleurCarte.PIQUE));
		main.add(new Carte(Denomination.SIX, cartes.CouleurCarte.TREFLE));
		main.add(new Carte(Denomination.DIX, cartes.CouleurCarte.CARREAU));
		main.add(new Carte(Denomination.QUATRE, cartes.CouleurCarte.COEUR));
		return main;
	}
	
	public static Carte getCarteForte() {
		return new Carte(Denomination.AS, cartes.CouleurCarte.COEUR);
	}
}
